﻿using PolePosition.v3.EntityFactory;

namespace PolePosition.v3.WcfService
{
    public class KML
    {
        #region Get KML Strings

        internal static string GetTransmissionStructuresKMLString(string transmissionStructuresList, string transmissionStructuresIcon, string transmissionStructuresColor, string transmissionStructuresText, int? top)
        {
            return GetKMLString(transmissionStructuresList, transmissionStructuresIcon, transmissionStructuresColor, transmissionStructuresText,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                top);
        }

        internal static string GetDistributionPolesKMLString(string distributionPolesList, string distributionPolesIcon, string distributionPolesColor, string distributionPolesText, int? top)
        {
            return GetKMLString(null, null, null, null,
                                distributionPolesList, distributionPolesIcon, distributionPolesColor, distributionPolesText,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                top);
        }

        internal static string GetMetersKMLString(string metersList, string metersIcon, string metersColor, string metersText, int? top)
        {
            return GetKMLString(null, null, null, null,
                                null, null, null, null,
                                metersList, metersIcon, metersColor, metersText,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                top);
        }

        internal static string GetTransformersKMLString(string transformersList, string transformersIcon, string transformersColor, string transformersText)
        {
            return GetKMLString(null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                transformersList, transformersIcon, transformersColor, transformersText,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null);
        }

        internal static string GetTransmissionGpsVisitsKMLString(string transmissionGpsVisitsList, string transmissionGpsVisitsIcon, string transmissionGpsVisitsColor, string transmissionGpsVisitsText, int? top)
        {
            return GetKMLString(null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                transmissionGpsVisitsList, transmissionGpsVisitsIcon, transmissionGpsVisitsColor, transmissionGpsVisitsText,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                top);
        }

        internal static string GetTransmissionInspectionVisitsKMLString(string transmissionInspectionVisitsList, string transmissionInspectionVisitsIcon, string transmissionInspectionVisitsColor, string transmissionInspectionVisitsText, int? top)
        {
            return GetKMLString(null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               transmissionInspectionVisitsList, transmissionInspectionVisitsIcon, transmissionInspectionVisitsColor, transmissionInspectionVisitsText,
                               null, null, null, null,
                               null, null, null, null,
                               top);
        }

        internal static string GetDistributionGpsVisitsKMLString(string distributionGpsVisitsList, string distributionGpsVisitsIcon, string distributionGpsVisitsColor, string distributionGpsVisitsText, int? top)
        {
            return GetKMLString(null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                null, null, null, null,
                                distributionGpsVisitsList, distributionGpsVisitsIcon, distributionGpsVisitsColor, distributionGpsVisitsText,
                                null, null, null, null,
                                top);
        }

        internal static string GetDistributionInspectionVisitsKMLString(string distributionInspectionVisitsList, string distributionInspectionVisitsIcon, string distributionInspectionVisitsColor, string distributionInspectionVisitsText, int? top)
        {
            return GetKMLString(null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               null, null, null, null,
                               distributionInspectionVisitsList, distributionInspectionVisitsIcon, distributionInspectionVisitsColor, distributionInspectionVisitsText,
                               top);
        }

        internal static string GetKMLString(string transmissionStructuresList, string distributionPolesList, string metersList, string transformersList,
            string transmissionGpsVisitsList, string transmissionInspectionVisitsList, string distributionGpsVisitsList,
            string distributionInspectionVisitsList, int? top)
        {

            return GetKMLString(transmissionStructuresList, null, null, null,
                distributionPolesList, null, null, null,
                metersList, null, null, null,
                transformersList, null, null, null,
                transmissionGpsVisitsList, null, null, null,
                transmissionInspectionVisitsList, null, null, null,
                distributionGpsVisitsList, null, null, null,
                distributionInspectionVisitsList, null, null, null, top);
        }

        internal static string GetKMLString(string transmissionStructuresList, string transmissionStructuresIcon, string transmissionStructuresColor, string transmissionStructuresText,
            string distributionPolesList, string distributionPolesIcon, string distributionPolesColor, string distributionPolesText,
            string metersList, string metersIcon, string metersColor, string metersText,
            string transformersList, string transformersIcon, string transformersColor, string transformersText,
            string transmissionGpsVisitsList, string transmissionGpsVisitsIcon, string transmissionGpsVisitsColor, string transmissionGpsVisitsText,
            string transmissionInspectionVisitsList, string transmissionInspectionVisitsIcon, string transmissionInspectionVisitsColor, string transmissionInspectionVisitsText,
            string distributionGpsVisitsList, string distributionGpsVisitsIcon, string distributionGpsVisitsColor, string distributionGpsVisitsText,
            string distributionInspectionVisitsList, string distributionInspectionVisitsIcon, string distributionInspectionVisitsColor, string distributionInspectionVisitsText,
            int? top)
        {

            return KMLFactory.GetKMLString(transmissionStructuresList, transmissionStructuresIcon, transmissionStructuresColor, transmissionStructuresText,
                                            distributionPolesList, distributionPolesIcon, distributionPolesColor, distributionPolesText,
                                            metersList, metersIcon, metersColor, metersText,
                                            transformersList, transformersIcon, transformersColor, transformersText,
                                            transmissionGpsVisitsList, transmissionGpsVisitsIcon, transmissionGpsVisitsColor, transmissionGpsVisitsText,
                                            transmissionInspectionVisitsList, transmissionInspectionVisitsIcon, transmissionInspectionVisitsColor, transmissionInspectionVisitsText,
                                            distributionGpsVisitsList, distributionGpsVisitsIcon, distributionGpsVisitsColor, distributionGpsVisitsText,
                                            distributionInspectionVisitsList, distributionInspectionVisitsIcon, distributionInspectionVisitsColor, distributionInspectionVisitsText,
                                            top);
        }

        #endregion

    }
}
